﻿using System;
using System.Collections.Generic;

namespace MSAcademic.v2.Infrastructure.Article
{
    public interface IArticleCommands
    {
        /// <summary>
        /// Create an Article and return it's Id.
        /// </summary>
        int CreateArticle(string title, int userId);

        void UpdateArticle(int id, string title, string shortText, string longText, bool isHidden, bool publish, DateTimeOffset? publishDate);
                         
        void HideArticle(int id);

        bool ToggleHideArticle(int id);

        void PublishArticle(int id);

        void BindTagsToArticle(int id, List<int> tagIds);

        void BindSubsectionsToArticle(int id, List<int> subsectionIds);
    }
}
